package com.aoxin.service.inter.course.systemCourse;

import java.util.List;
import java.util.Map;

import com.aoxin.model.course.SlfSyllabus;
import com.aoxin.model.dto.CourseDto;
import com.aoxin.model.dto.SelectDto;
import com.aoxin.model.dto.SlfSyllabusDto;

/**
 * 课程表服务接口
 * 
 * @author Melody
 * @date 2018年3月27日 上午10:08:53
 */
public interface SyllabusService {

	/**
	 * 添加课程表
	 * 
	 * @param syllabus
	 *            课程表
	 */
	public void insertSyllabus(SlfSyllabus syllabus);

	/**
	 * 删除课程表
	 * 
	 * @param syllabusIds
	 *            课程表ID集合
	 */
	public void deleteSyllabuss(List<Integer> syllabusIds);

	/**
	 * 修改课程表
	 * 
	 * @param syllabus
	 *            修改
	 */
	public void updateSyllabus(SlfSyllabus syllabus);

	/**
	 * 查询课程表
	 * 
	 * @param syllabusId
	 *            课程表ID
	 * @return 课程表
	 */
	public SlfSyllabusDto getSyllabus(Integer syllabusId);

	/**
	 * 查询课表
	 * 
	 * @param map
	 *            条件集合
	 * @return 课表
	 */
	public List<SlfSyllabus> getSyllabusList(Map<String, Object> map);

	/**
	 * 根据孩子ID查询课表
	 * 
	 * @param map
	 *            条件集合
	 * @return 课表集合
	 */
	public List<CourseDto> getSyllabusListByChildren(Map<String, Object> map);

	/**
	 * 根据孩子ID查询课表
	 * 
	 * @param map
	 *            条件集合
	 * @return 课表
	 */
	public CourseDto getSyllabusByChildren(Map<String, Object> map);

	/**
	 * 课程展示
	 * 
	 * @param slfSyllabus
	 * @return
	 */
	List<SlfSyllabus> disByPrimaryKey(SlfSyllabus slfSyllabus);

	/**
	 * 获取周数
	 * 
	 * @return 周
	 */
	public List<SelectDto> getSelectWeek();

	/**
	 * 批量查询课表时间
	 * 
	 * @param schoolId
	 *            学校ID * @param ymdDate 开始时间
	 * @return 上课时间
	 */
	public List<String> getSyllabusDate(Integer schoolId, String ymdDate);

}
